آشنائی با پروتكل HTTP ( بخش اول )
آشنائی با پروتكل HTTP ( بخش اول )
در ادامه با پروتكل فوق بيشتر آشنا خواهيم شد.
دنيای شبكه های كامپيوتری دارای عمری چند ساله است و بسياری از كاربران ، ضرورت استفاده از شبكه را همزمان با متداول شدن اينترنت در اوايل سال 1990 دريافتند . عموميت اينترنت، رشد و گسترش شبكه های كامپيوتری را به دنبال داشته است . اينترنت نيز با سرعتی باورنكردنی رشد و امروزه شاهد ايجاد ده ها ميليون وب سايت در طی يك سال در اين عرصه می باشيم .
تمامی وب سايت های موجود بر روی اينترنت از پروتكل HTTP استفاده می نمايند . با اين كه پروتكل HTTP با استفاده از پروتكل های ديگری نظير IP و TCP ماموريت خود را انجام می دهد ، ولی اين پروتكل HTTP است كه به عنوان زبان مشترك ارتباطی بين سرويس گيرنده و سرويس دهنده وب به رسميت شناخته شده و از آن استفاده می گردد . در واقع مرورگر وب صدای خود را با استفاده از پروتكل HTTP به گوش سرويس دهنده وب رسانده و از وی درخواست يك صفحه وب را می نمايد.
به منظور انجام يك تراكنش موفقيت آميز بين سرويس گيرندگان وب ( نظير IE ) و سرويس دهندگان وب ( نظير IIS ) ، به اطلاعات زيادی نياز خواهد بود . پس از handshake پروتكل TCP/IP ، مرورگر اطلاعات گسترده ای را برای سرويس دهنده وب ارسال می نمايد .
يك بسته اطلاعاتی نمونه در شكل زير نشان داده شده است :
داده مربوط به پروتكل لايه application ( در اين مورد خاص پروتكل HTTP ) ، پس از هدر TCP/IP قرار می گيرد . جدول زير برخی اطلاعات مبادله شده بين سرويس گيرنده و سرويس دهنده وب را نشان می دهد .
عملكرد | نوع اطلاعات |
سرويس گيرنده وب يك درخواست GETرا برای سرويس دهنده وب ارسال و از وی درخواست اطلاعاتی را با استفاده از پروتكل HTTP 1.1 می نمايد. | GET /HTTP/1.1 |
وب سايتی است كه سرويس گيرنده قصد ارتباط با آن را دارد . | Host: |
به سرويس دهنده وب ، نوع نرم افزار سرويس گيرنده ( در اين مورد خاص Mozilla version 5.0 ) و نوع سيستم عامل نصب شده بر روی كامپيوتر ( در اين مورد خاص Windows version NT 5.1 و يا همان ويندوز XP ) اعلام می گردد. | User-agent: |
نوع character setاستفاده شده به سرويس دهنده اعلام می گردد ( در اين مورد خاص از en:us و نسخه شماره 10 . 7 . 1 استفاده شده است ) . | en-US; rv: 1.7.10) |
نام مرورگر استفاده شده توسط سرويس گيرنده به سرويس دهنده وب اعلام می گردد ( در اين مورد خاص از مرورگر FireFoxاستفاده شده است ) . | Gecko/20050716 Firefox/1.0.6 |
سرويس گيرنده به سرويس دهنده وب فرمت اطلاعاتی را كه می تواند دريافت نمايد ، اعلام می نمايد ( در اين مورد خاص هم برای متن و هم برای application از فرمت xmlاستفاده می گردد ) . | Accept: |
سرويس گيرنده به سرويس دهنده نوع فرمت متن دريافتی را اعلام می نمايد ( در اين مورد خاص htmlو يا plaintext) . | text/html; q=0.9, text/plain; q=0.8, image/png, */*;q=0.5 |
ليست character setكه سرويس گيرنده وب قادر به فهم آنان است، اعلام می گردد ( در اين مورد خاص ISO-8859 , و يا utf-8 ) . | Accept-Charset: |
به سرويس دهنده وب مدت زمان نگهداری session اعلام می گردد ( در اين مورد خاص 300 ثانيه ) . | Keep-Alive: |
cookie و مقدار مربوطه به آن اعلام می گردد. كوكی يك متن اسكی فلت می باشد كه اطلاعات متفاوتی را در خود نگهداری می نمايد . | Cookie: PREF=ID=01a0822454acb293: LD=en:TM=1121638094�.. |
User agent نوع مرورگر و سيستم عامل سرويس گيرنده را مشخص می نمايد و اين موضوع می تواند مواد اوليه لازم برای تدارك برخی حملات توسط مهاجمان را تامين نمايد .
{{Fullname}} {{Creationdate}}
{{Body}}